# 使用 Ubuntu 22.04 作为基础镜像
FROM ubuntu:22.04

# 设置非交互式安装，避免安装过程中的提示
ENV DEBIAN_FRONTEND=noninteractive

# 更新包列表并安装必要的依赖
# - libreoffice: 核心套件
# - libreoffice-writer: 专门用于文字处理（.doc/.docx）
# - python3: Python 解释器
# - python3-pip: Python 包管理器
# - python3-venv: 用于创建虚拟环境
RUN apt-get update && \
    apt-get install -y \
        libreoffice \
        libreoffice-writer \
        python3 \
        python3-pip \
        python3-venv \
        curl && \
    # 清理缓存以减小镜像体积
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# 为 LibreOffice 创建一个专用用户（不以 root 运行，更安全）
RUN useradd -m -d /home/libreoffice -s /bin/bash libreoffice

# 创建应用目录并切换到该用户
WORKDIR /home/libreoffice/app
USER libreoffice

# 复制 requirements.txt (如果需要额外的 Python 包)
COPY --chown=libreoffice:libreoffice requirements.txt .
RUN python3 -m pip install --user -r requirements.txt

# 复制主应用脚本 (请确保您在同一目录下有 convert_doc.py 文件)
COPY --chown=libreoffice:libreoffice main.py .

# 暴露服务端口 (例如 8000)
EXPOSE 8000

# 启动命令：运行 Python 脚本
CMD ["python3", "main.py"]